<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>SipekSDK Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
	<!-- Main table. -->
<TABLE id="MainTable" cellSpacing="0" cellPadding="0" width="100%" border="0">
<!-- First Row,  logo. -->
<TR>
 <TD>
  <TABLE cellSpacing="0" cellPadding="0" width="100%" border="0">
    <TR valign="bottom">

	<TD style="background-image: url(/images/bg1.jpg);">
	<!-- Logo section -->
	<table border="0" class="pj">
		<tr>
		<td vAlign="middle" width="46"><A href="http://sites.google.com/site/sipekvoip"><img alt="sipek logo" src="http://sites.google.com/site/sipekvoip/files/Sipek64x64.png" border="0"></A>
		</td>
		<td vAlign="top">
		<font face="Verdana,Arial,Helvetica" size="5"><b><A style="color: black; text-decoration: none" HREF="/">Sipek Software Development Kit</A></b></FONT><br>

		<FONT face="Arial,Helvetica" size="1"><A style="color: black; text-decoration: none" HREF="/">Open source SIP Software Development Kit - SipekSDK</A></FONT><br>
		<br>
<script type="text/javascript"><!--
google_ad_client = "pub-1698141058269504";
/* 728x15, created 3/21/08 */
google_ad_slot = "1887304858";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
		</td>
		</tr>
	</table>
	</TD>
    </TR>
  </TABLE>
 </TD>
</TR>

<!-- Second Row, a HR. -->

<TR>
    <td><hr size="2"></td>
</TR>
<!-- Third row, main contents. -->
<TR>
    <TD>
	     <TABLE id="ContentTable" cellSpacing="6" cellPadding="1" width="100%" border="0">
	     <TR valign="top">
		    <TD valign="top" width="160" style="background-image: url(/images/bg2.jpg);">

<h3>Links </h3>

<p><a href="http://sites.google.com/site/sipekvoip">Sipek Projects Home</a></p>

<p><a href="http://sites.google.com/site/sipekvoip/sipeksdk">SipekSdk</a></p>

<p><a href="http://sites.google.com/site/sipekvoip/Home/documentation/tutorial">SipekSdk Tutorial</a></p>

<p><a href="http://code.google.com/p/sipek2/">Sipek Softphone Project Home</a></p>

<p><a href="http://code.google.com/p/sipeksdk/">SipekSDK Project Home</a></p>

<p><a href="http://groups.google.com/group/sipek">Sipek Discussion Group</a></p>
<hr size="2">
<b>About:</b><FONT face="Arial, Verdana" size="1"> Sipek and SipekSDK are created by: Sasa Coh<br>
<br>

<script type="text/javascript"><!--
google_ad_client = "pub-1698141058269504";
/* 160x600, created 3/21/08 */
google_ad_slot = "1219054775";
google_ad_width = 160;
google_ad_height = 600;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<p></p>

		    </TD>
		    <TD vAlign="top" style="border-left: dotted 1px; border-color=#C0C0C0;">&nbsp;</td>
      <TD>

	<p><A HREF="/">Home</A> --&gt; SipekSDK API Reference</p>
<!-- Generated by Doxygen 1.5.5 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="namespaces.html"><span>Packages</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><b>Sipek</b>.<b>Common</b>.<b>CallControl</b>.<a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html">CStateMachine</a>
  </div>
</div>
<div class="contents">
<h1>Sipek.Common.CallControl.CStateMachine Class Reference</h1><!-- doxytag: class="Sipek::Common::CallControl::CStateMachine" --><!-- doxytag: inherits="Sipek::Common::IStateMachine" --><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html" title="CStateMachine class is a telephony data container for signle call. It maintains call...">CStateMachine</a> class is a telephony data container for signle call. It maintains call state, communicates with signaling via proxy and informs about events from signaling. A Finite State Machine is implemented in State design pattern!  
<a href="#_details">More...</a>
<p>
Inherits <a class="el" href="class_sipek_1_1_common_1_1_i_state_machine.html">Sipek.Common.IStateMachine</a>.
<p>

<p>
<a href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#a4b6e61a6b39e34175c57c2535ace46c">CStateMachine</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Call/Session constructor. Initializes call states, creates signaling proxy, initialize time, initialize timers.  <a href="#a4b6e61a6b39e34175c57c2535ace46c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">override void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#90c7b718888d088f2d8a6371ba40d4fb">changeState</a> (EStateId stateId)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Change state by state id.  <a href="#90c7b718888d088f2d8a6371ba40d4fb"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">override void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#aa88a73e23f75b6e85d96a2987d58339">destroy</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destroy call. Calculate call duraton time, edit call log, destroy session.  <a href="#aa88a73e23f75b6e85d96a2987d58339"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Properties</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_call_manager.html">CCallManager</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#a20abf645989908a44a9caf59d2b14e7">Manager</a><code> [get]</code></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A reference to <a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_call_manager.html" title="CCallManager Main telephony class. Manages call instances. Handles user events and...">CCallManager</a> instance.  <a href="#a20abf645989908a44a9caf59d2b14e7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">override int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#3fff3c1abd204d72f5d6e549be21e119">Session</a><code> [get, set]</code></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Call/Session identification.  <a href="#3fff3c1abd204d72f5d6e549be21e119"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">override string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#4ae042ac24d185ebb650fdea28a0cad0">CallingNumber</a><code> [get, set]</code></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calling number property.  <a href="#4ae042ac24d185ebb650fdea28a0cad0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">override string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#11dcdbf4872ff776f399e8c2ecf7cd9d">CallingName</a><code> [get, set]</code></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calling name property.  <a href="#11dcdbf4872ff776f399e8c2ecf7cd9d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">override bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#22497ab11cb4d22d0652ad20504420ad">Incoming</a><code> [get, set]</code></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Incoming call flag.  <a href="#22497ab11cb4d22d0652ad20504420ad"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">override bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#f46c44f2bbd4a01bac8792e86be35ae4">IsHeld</a><code> [get, set]</code></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Is call held by other side.  <a href="#f46c44f2bbd4a01bac8792e86be35ae4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">override bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#779360edf1290bd3a241c1b5f0a63533">Is3Pty</a><code> [get, set]</code></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Is this call 3pty (==2 active sessions).  <a href="#779360edf1290bd3a241c1b5f0a63533"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">override EStateId&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#3f1c40d9b7f0d70f21bf01255038eaf0">StateId</a><code> [get]</code></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">override TimeSpan&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#647967536376ce88f0e986c38d66d401">Duration</a><code> [get, set]</code></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Duration of a call.  <a href="#647967536376ce88f0e986c38d66d401"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">override TimeSpan&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#809988f3b434859c43772713adb4b834">RuntimeDuration</a><code> [get]</code></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calculate call duration.  <a href="#809988f3b434859c43772713adb4b834"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">override bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#a1d622a1c63c005a94259d7a7aab3686">IsNull</a><code> [get]</code></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check for null state machine.  <a href="#a1d622a1c63c005a94259d7a7aab3686"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interface_sipek_1_1_common_1_1_i_call_log_interface.html">ICallLogInterface</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#7a028fd15ea8d11af88ccac1023fae15">CallLoger</a><code> [get]</code></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Call log instance.  <a href="#7a028fd15ea8d11af88ccac1023fae15"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">override string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html#05a97f6036bcb9090a6d13869e818345">Codec</a><code> [get]</code></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get Current codec for this call.  <a href="#05a97f6036bcb9090a6d13869e818345"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_state_machine.html" title="CStateMachine class is a telephony data container for signle call. It maintains call...">CStateMachine</a> class is a telephony data container for signle call. It maintains call state, communicates with signaling via proxy and informs about events from signaling. A Finite State Machine is implemented in State design pattern! 
<p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="a4b6e61a6b39e34175c57c2535ace46c"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::CStateMachine" ref="a4b6e61a6b39e34175c57c2535ace46c" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Sipek.Common.CallControl.CStateMachine.CStateMachine           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Call/Session constructor. Initializes call states, creates signaling proxy, initialize time, initialize timers. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>manager</em>&nbsp;</td><td>reference to call manager</td></tr>
  </table>
</dl>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="90c7b718888d088f2d8a6371ba40d4fb"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::changeState" ref="90c7b718888d088f2d8a6371ba40d4fb" args="(EStateId stateId)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">override void Sipek.Common.CallControl.CStateMachine.changeState           </td>
          <td>(</td>
          <td class="paramtype">EStateId&nbsp;</td>
          <td class="paramname"> <em>stateId</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Change state by state id. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>stateId</em>&nbsp;</td><td>state id</td></tr>
  </table>
</dl>

<p>Implements <a class="el" href="class_sipek_1_1_common_1_1_i_state_machine.html">Sipek.Common.IStateMachine</a>.</p>

</div>
</div><p>
<a class="anchor" name="aa88a73e23f75b6e85d96a2987d58339"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::destroy" ref="aa88a73e23f75b6e85d96a2987d58339" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">override void Sipek.Common.CallControl.CStateMachine.destroy           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Destroy call. Calculate call duraton time, edit call log, destroy session. 
<p>

<p>Implements <a class="el" href="class_sipek_1_1_common_1_1_i_state_machine.html">Sipek.Common.IStateMachine</a>.</p>

</div>
</div><p>
<hr><h2>Property Documentation</h2>
<a class="anchor" name="a20abf645989908a44a9caf59d2b14e7"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::Manager" ref="a20abf645989908a44a9caf59d2b14e7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_call_manager.html">CCallManager</a> Sipek.Common.CallControl.CStateMachine.Manager<code> [get]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
A reference to <a class="el" href="class_sipek_1_1_common_1_1_call_control_1_1_c_call_manager.html" title="CCallManager Main telephony class. Manages call instances. Handles user events and...">CCallManager</a> instance. 
<p>

</div>
</div><p>
<a class="anchor" name="3fff3c1abd204d72f5d6e549be21e119"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::Session" ref="3fff3c1abd204d72f5d6e549be21e119" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">override int Sipek.Common.CallControl.CStateMachine.Session<code> [get, set]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Call/Session identification. 
<p>

<p>Reimplemented from <a class="el" href="class_sipek_1_1_common_1_1_i_state_machine.html">Sipek.Common.IStateMachine</a>.</p>

</div>
</div><p>
<a class="anchor" name="4ae042ac24d185ebb650fdea28a0cad0"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::CallingNumber" ref="4ae042ac24d185ebb650fdea28a0cad0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">override string Sipek.Common.CallControl.CStateMachine.CallingNumber<code> [get, set]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Calling number property. 
<p>

<p>Reimplemented from <a class="el" href="class_sipek_1_1_common_1_1_i_state_machine.html">Sipek.Common.IStateMachine</a>.</p>

</div>
</div><p>
<a class="anchor" name="11dcdbf4872ff776f399e8c2ecf7cd9d"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::CallingName" ref="11dcdbf4872ff776f399e8c2ecf7cd9d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">override string Sipek.Common.CallControl.CStateMachine.CallingName<code> [get, set]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Calling name property. 
<p>

<p>Reimplemented from <a class="el" href="class_sipek_1_1_common_1_1_i_state_machine.html">Sipek.Common.IStateMachine</a>.</p>

</div>
</div><p>
<a class="anchor" name="22497ab11cb4d22d0652ad20504420ad"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::Incoming" ref="22497ab11cb4d22d0652ad20504420ad" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">override bool Sipek.Common.CallControl.CStateMachine.Incoming<code> [get, set]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Incoming call flag. 
<p>

<p>Reimplemented from <a class="el" href="class_sipek_1_1_common_1_1_i_state_machine.html">Sipek.Common.IStateMachine</a>.</p>

</div>
</div><p>
<a class="anchor" name="f46c44f2bbd4a01bac8792e86be35ae4"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::IsHeld" ref="f46c44f2bbd4a01bac8792e86be35ae4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">override bool Sipek.Common.CallControl.CStateMachine.IsHeld<code> [get, set]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Is call held by other side. 
<p>

<p>Reimplemented from <a class="el" href="class_sipek_1_1_common_1_1_i_state_machine.html">Sipek.Common.IStateMachine</a>.</p>

</div>
</div><p>
<a class="anchor" name="779360edf1290bd3a241c1b5f0a63533"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::Is3Pty" ref="779360edf1290bd3a241c1b5f0a63533" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">override bool Sipek.Common.CallControl.CStateMachine.Is3Pty<code> [get, set]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Is this call 3pty (==2 active sessions). 
<p>

<p>Reimplemented from <a class="el" href="class_sipek_1_1_common_1_1_i_state_machine.html">Sipek.Common.IStateMachine</a>.</p>

</div>
</div><p>
<a class="anchor" name="3f1c40d9b7f0d70f21bf01255038eaf0"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::StateId" ref="3f1c40d9b7f0d70f21bf01255038eaf0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">override EStateId Sipek.Common.CallControl.CStateMachine.StateId<code> [get]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented from <a class="el" href="class_sipek_1_1_common_1_1_i_state_machine.html">Sipek.Common.IStateMachine</a>.</p>

</div>
</div><p>
<a class="anchor" name="647967536376ce88f0e986c38d66d401"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::Duration" ref="647967536376ce88f0e986c38d66d401" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">override TimeSpan Sipek.Common.CallControl.CStateMachine.Duration<code> [get, set]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Duration of a call. 
<p>

<p>Reimplemented from <a class="el" href="class_sipek_1_1_common_1_1_i_state_machine.html">Sipek.Common.IStateMachine</a>.</p>

</div>
</div><p>
<a class="anchor" name="809988f3b434859c43772713adb4b834"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::RuntimeDuration" ref="809988f3b434859c43772713adb4b834" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">override TimeSpan Sipek.Common.CallControl.CStateMachine.RuntimeDuration<code> [get]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Calculate call duration. 
<p>

<p>Reimplemented from <a class="el" href="class_sipek_1_1_common_1_1_i_state_machine.html">Sipek.Common.IStateMachine</a>.</p>

</div>
</div><p>
<a class="anchor" name="a1d622a1c63c005a94259d7a7aab3686"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::IsNull" ref="a1d622a1c63c005a94259d7a7aab3686" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">override bool Sipek.Common.CallControl.CStateMachine.IsNull<code> [get]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Check for null state machine. 
<p>

<p>Reimplemented from <a class="el" href="class_sipek_1_1_common_1_1_i_state_machine.html">Sipek.Common.IStateMachine</a>.</p>

</div>
</div><p>
<a class="anchor" name="7a028fd15ea8d11af88ccac1023fae15"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::CallLoger" ref="7a028fd15ea8d11af88ccac1023fae15" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="interface_sipek_1_1_common_1_1_i_call_log_interface.html">ICallLogInterface</a> Sipek.Common.CallControl.CStateMachine.CallLoger<code> [get, protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Call log instance. 
<p>

</div>
</div><p>
<a class="anchor" name="05a97f6036bcb9090a6d13869e818345"></a><!-- doxytag: member="Sipek::Common::CallControl::CStateMachine::Codec" ref="05a97f6036bcb9090a6d13869e818345" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">override string Sipek.Common.CallControl.CStateMachine.Codec<code> [get]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get Current codec for this call. 
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Codec name</dd></dl>

<p>Reimplemented from <a class="el" href="class_sipek_1_1_common_1_1_i_state_machine.html">Sipek.Common.IStateMachine</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li>callStateMachine.cs</ul>
</div>
<hr><center>
<font face="Arial,Helvetica" size="1">SipekSdk - Open Source VoIP Software Development Kit<br>
<i>(c)2007-2008 Sasa Coh </i><a href="mailto:sasacoh@gmail.com">sasacoh@gmail.com</a></font>
</center>

				</TD>
				<TD vAlign="top"></TD>

			    </TR>
			</TABLE>
		    </TD>
		</TR>
	    </TABLE>
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-2163858-11");
pageTracker._trackPageview();
</script>

</BODY>
</HTML>
